package com.mmall.dao;

import com.mmall.pojo.User;
import org.apache.ibatis.annotations.Param;

public interface UserMapper {
    int deleteByPrimaryKey(Integer id);

    int insert(User record);

    int insertSelective(User record);

    User selectByPrimaryKey(Integer id);

    int updateByPrimaryKeySelective(User record); //根据主键更新 选择性的更新 那个字段便更只更新这一个字段

    int updateByPrimaryKey(User record);

    int checkUsername(String username); //判断用户名是否存在

    int checkEmail(String email);//判断邮箱是否存在

    User selectLogin(@Param("username") String username,@Param("password")  String password); //mybatis 使用多个参数的时候需要使用@param参数注解

    String selectQuestionByUsername(String username); //根据用户名查询问题

    int checkAnswer(@Param("username") String username,@Param("question")String question, @Param("answer")String answer); //提示问题和答案

    int checkPassword(@Param(value = "password") String password,@Param("userId") Integer userId);//根据用户id和密码查询 用户信息

    int updatePasswordByUsername(@Param("username")String username,@Param("passwordNew")String passwordNew);

    int checkEmailByUserId(@Param(value = "email")String email,@Param(value = "userId")Integer userId);// 根据用户id 查询用户的email存在
}